<?php
/* @var $this SiteController */

$this->pageTitle=Yii::app()->name . 'Nhập Thông tin giảng viên từ file Excel';
$this->breadcrumbs=array(
	'Giảng viên'=>array('admin'),
	'Nhập Thông tin giảng viên từ file Excel',
);
$this->menu=array(
	array('label'=>'Quản lý Giảng viên','url'=>array('admin')),
	array('label'=>'Quản lý Đơn vị công tác','url'=>array('donvicongtac/admin')),
	array('label'=>'Quản lý Ngạch','url'=>array('ngach/admin')),
);
$connection=Yii::app()->db;
?>
<h1>Nhập Thông tin giảng viên từ file Excel</h1></br>

<?php
if (!ISSET($_GET['up']))
{
?>
<form method="post" action="index.php?r=giangvien/nhapgiangvien&up=up" name="submit" enctype="multipart/form-data">
	Chọn tệp tin Excel chứa thông tin giảng viên: 
	<input type="file" name="fileField" id="fileField">
	<input type="submit" name="submit" value="Tải lên">
</form>
<?php
}
else
{
$target_dir = "protected/views/site/pages/uploads/";
$target_file = $target_dir . basename($_FILES["fileField"]["name"]);
//$target_file = $target_dir . 'temp.xlsx';
$uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);

// Kiểm tra định dạng file
if($imageFileType != "xls" && $imageFileType != "xlsx") {
    echo "Hệ thống chỉ chấp nhận file Excel (.xls hoặc . xlsx). Vui lòng chọn file khác.";
	?>
	<form method="post" action="index.php?r=giangvien/nhapgiangvien&up=up" name="submit" enctype="multipart/form-data">
		Chọn tệp tin Excel chứa thông tin môn học: 
		<input type="file" name="fileField" id="fileField">
		<input type="submit" name="submit" value="Tải lên">
	</form>
	<?php
    $uploadOk = 0;
}

if ($uploadOk == 1)
{
	if (move_uploaded_file($_FILES["fileField"]["tmp_name"], $target_file)) {
        //echo "The file ". basename( $_FILES["fileField"]["name"]). " has been uploaded.";
			
			/** Error reporting */
		error_reporting(E_ALL);
		ini_set('display_errors', TRUE);
		ini_set('display_startup_errors', TRUE);
		date_default_timezone_set('Europe/London');

		if (PHP_SAPI == 'cli')
			die('This example should only be run from a Web Browser');

			/** Include PHPExcel */
		require_once '././././protected/extensions/PHPExcel.php';


			// Create new PHPExcel object
		//$objPHPExcel = new PHPExcel();

			// Load file
		$objPHPExcel = PHPExcel_IOFactory::load($target_file);

			// get data
		$run_row=6;
		$check=1;
		$tong=0;
		//$merg=$objPHPExcel->getActiveSheet()->getMergeCells();
		//echo count($merg);
		//print_r($merg);
		
		//if ($objPHPExcel->getActiveSheet()->getCell('B9')->isInRange($merg))
		//	echo ('hehe');
		
		/*
		
		*/
		$rowgood=6;
		while($check)
		{
			// Nếu ô đầu tiên khác trống thì làm
			if (($objPHPExcel->getActiveSheet()->getCell('A'.$run_row)->getValue()!=''))
			{
				$magv=$objPHPExcel->getActiveSheet()->getCell('B'.$run_row)->getValue();
				$tengv=$objPHPExcel->getActiveSheet()->getCell('C'.$run_row)->getValue();
				$mangach=$objPHPExcel->getActiveSheet()->getCell('H'.$run_row)->getValue();
				$chucdanhhocvi=$objPHPExcel->getActiveSheet()->getCell('E'.$run_row)->getValue();
				if ($chucdanhhocvi=='Cử nhân')
				{
					$chucdanhhocvi=0;
				}
				if ($chucdanhhocvi=='Thạc sĩ')
				{
					$chucdanhhocvi=1;
				}
				if ($chucdanhhocvi=='Tiến sĩ')
				{
					$chucdanhhocvi=2;
				}
				if ($chucdanhhocvi=='PGS. Tiến sĩ')
				{
					$chucdanhhocvi=3;
				}
				if ($chucdanhhocvi=='GS. Tiến sĩ')
				{
					$chucdanhhocvi=4;
				}
				$nam=1;
				if ($objPHPExcel->getActiveSheet()->getCell('D'.$run_row)->getValue()=='x')
					$nam=0;
				$namsinh=$objPHPExcel->getActiveSheet()->getCell('I'.$run_row)->getValue();
				$sodt=$objPHPExcel->getActiveSheet()->getCell('K'.$run_row)->getValue();
				$dvct=$objPHPExcel->getActiveSheet()->getCell('G'.$run_row)->getValue();
				$madvct='';
				// Lấy mã đơn vị
				$command=$connection->createCommand()
				->select('*')
				->from('donvicongtac')
				->where(array('in','tendonvi',array($dvct)))
				->query();
				foreach ($command as $row)
				{
					$madvct=$row['madonvi'];
					break;
				}
				$chuyennganh=$objPHPExcel->getActiveSheet()->getCell('F'.$run_row)->getValue();
				$diachi=$objPHPExcel->getActiveSheet()->getCell('J'.$run_row)->getValue();
				$cmnd=$objPHPExcel->getActiveSheet()->getCell('L'.$run_row)->getValue();
				$ngaycap=$objPHPExcel->getActiveSheet()->getCell('M'.$run_row)->getValue();
				$noicap=$objPHPExcel->getActiveSheet()->getCell('N'.$run_row)->getValue();
				$masothue=$objPHPExcel->getActiveSheet()->getCell('P'.$run_row)->getValue();
				$namvaotruong=$objPHPExcel->getActiveSheet()->getCell('O'.$run_row)->getValue();
				$loaihinh='';
				if ($objPHPExcel->getActiveSheet()->getCell('Q'.$run_row)->getValue()=='x')
					$loaihinh='gvch';
				$nghiencuusinh=0;
				if ($objPHPExcel->getActiveSheet()->getCell('R'.$run_row)->getValue()=='x')
					$nghiencuusinh=1;
				$tapsu=0;
				if ($objPHPExcel->getActiveSheet()->getCell('S'.$run_row)->getValue()=='x')
					$tapsu=1;
				$giangday=$objPHPExcel->getActiveSheet()->getCell('T'.$run_row)->getValue();
				$ghichu=$objPHPExcel->getActiveSheet()->getCell('U'.$run_row)->getValue();
					// Thêm vào DS môn học
					try
					{
						$tong=$tong+1;
						$command1=$connection->createCommand("INSERT INTO `qlpc`.`giangvien` (`magv`, `tengv`, `mangach`, `chucdanhhocvi`, `isMale`, `namsinh`, `sodtgv`, `madonvi`, `chuyennganh`, `diachi`, `cmnd`, `ngaycap`, `noicap`, `masothue`, `namvaotruong`, `loaihinh`, `nghiencuusinh`, `giangvientapsu`, `khoagiangday`, `ghichu`) VALUES ('".$magv."', '".$tengv."', '".$mangach."', '".$chucdanhhocvi."', '".$nam."', '".$namsinh."', '".$sodt."', '".$madvct."', '".$chuyennganh."', '".$diachi."', '".$cmnd."', '".$ngaycap."', '".$noicap."', '".$masothue."', '".$namvaotruong."', '".$loaihinh."', '".$nghiencuusinh."', '".$tapsu."', '".$giangday."', '".$ghichu."');")->query();					
					}
					catch(Exception $ex)
					{
						$tong=$tong-1;
					}
				// đến dòng tiếp theo
				$run_row=$run_row+1;
				$check=1;
			}
			// Nếu ô đầu bằng rỗng thì check=0 <=> Hết file!!!
			else
			{
				$check=0;
			}
		}
		
		unlink($target_file);

		// thong báo cho người dùng
		echo "<script>
		alert('Đã thêm thành công vào CSDL ".$tong." giảng viên.');
		window.location.href='index.php?r=giangvien/nhapgiangvien';
		</script>";
    } 
	else {
        echo "<script>
		alert('Có lỗi xảy ra trong quá trình đọc tệp tin. Vui lòng kiểm tra lại tệp tin và thử lại!');
		window.location.href='index.php?r=giangvien/nhapgiangvien';
		</script>";
	}

}
}
?>